#ifndef _FGLYPHTRANSFORM_H_
#define _FGLYPHTRANSFORM_H_

namespace Font
{

	class GlyphTransform
	{
	
	public:
	
		GlyphTransform(Library* a_Library);
		~GlyphTransform();

		virtual void Transform(const tb::Vec2& a_Cursor, GlyphEntry* a_Glyph);
	
		const tb::Vec2& GetCornerUpperLeft();
		const tb::Vec2& GetCornerUpperRight();
		const tb::Vec2& GetCornerLowerLeft();
		const tb::Vec2& GetCornerLowerRight();

	protected:

		tb::Vec2 m_Cursor;
		tb::Vec2 m_GlyphStart, m_GlyphEnd;

		tb::Vec2 m_Corner[4];

		Library* m_Library;
	
	}; // class GlyphTransform

}; // namespace Font
	
#endif